package cn.lcsjsxy.yxz.constructor;

public class jibenlijie {
    //5.10
    //构造器的理解  (建设)
    /*1.作用:
    //创建对象
    //初始化对象的信息
    //2.说明:
    //如果没有显式的定义类的构造器的话，则系统默认提供一个空参的定义构造器
    //定义构造器的格式: 权限修饰符 类名(形参列表) { }
    //一个类中定义的多个构造器，彼此构成重载
    //一旦我们显式的定义了类的构造器之后，系统就不再提供默认的空参构造器
     一个类中，至少会有一个构造器。*/
    public static void main(String[] args) {
        //创建类的对象
        Person p = new Person();

        p.eat();

        Person p1 = new Person("tom");
        System.out.println(p1.name);

        Person p2 = new Person();
        System.out.println(p2.name);
        System.out.println(p2.age);
    }

}

class Person {
    //属性
    String name;
    int age;

    //构造器
    public Person() {
        System.out.println("我是个构造器");
    }

    public Person(String n) {
        name = n;
    }

    public Person(String n, int a) {
        name = n;
        age = a;
    }

    //方法
    public void eat() {
        System.out.println("吃饭");
    }

    public void study() {
        System.out.println("学习");
    }

}